<!DOCTYPE html>
<html>
<head><meta name="generator" content="Hexo 3.8.0">
  <meta charset="utf-8">
  <title>Gitlab 升级笔记 12.6.6 | 极客世界</title>
  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  <link rel="shortcut icon" href="/favicon.ico">
  <link rel="stylesheet" href="/css/app.css">
  <!-- <link rel='stylesheet' href='http://fonts.useso.com/css?family=Source+Code+Pro'> -->
  
</head>
</html>
<body>
  <nav class="app-nav">
  
    
      <a href="/.">home</a>
    
  
    
      <a href="/archives">archive</a>
    
  
    
      <a href="/atom.xml">rss</a>
    
  
</nav>

  <main class="post">
  <article>
  <h1 class="article-title">
    <a href="/2020/02/08/gitlab-upgrade-12.6.6/">Gitlab 升级笔记 12.6.6</a>
  </h1>

  <section class="article-meta">
    <p class="article-date">February 08 2020</p>
  </section>

  <section class="article-entry">
    <div id="content">

<div id="outline-container-org460d549" class="outline-2">
<h2 id="org460d549">&#x4E0B;&#x8F7D;&#x5730;&#x5740;</h2>
<div class="outline-text-2" id="text-org460d549">
<div class="org-src-container">
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line">docker pull carloswong1224/docker-gitlab:<span class="number">12.6</span>.<span class="number">6</span></span><br></pre></td></tr></table></figure>
</div>
</div>
</div>


<div id="outline-container-orgf2a29c4" class="outline-2">
<h2 id="orgf2a29c4">&#x65B0;&#x589E;&#x5185;&#x5BB9;</h2>
<div class="outline-text-2" id="text-orgf2a29c4">
<p>
&#x6839;&#x636E;&#x5728; <a href="https://carlos-wong.github.io/2020/01/10/gitlab-upgrade-12-5-6/">Gitlab 12.5.6</a>  &#x4E2D;&#x65B0;&#x589E;&#x7684;&#x81EA;&#x5B9A;&#x4E49;&#x6743;&#x9650;&#x6765;&#x63A7;&#x5236;&#x524D;&#x7AEF;&#x9875;&#x9762;&#x663E;&#x793A;&#x5185;&#x5BB9;&#x3002;&#x5B9E;&#x73B0;&#x6CA1;&#x6709;&#x5BF9;&#x5E94;&#x6743;&#x9650;&#x7684;&#x7528;&#x6237;&#x5728;&#x9875;&#x9762;&#x4E0A;&#x65E0;&#x6CD5;&#x7F16;&#x8F91;&#x5BF9;&#x5E94;&#x7684;&#x529F;&#x80FD;&#xFF0C;&#x6BD4;&#x5982; assignee&#xFF0C; &#x66F4;&#x6539; due date&#x3002;&#x4E4B;&#x524D;&#x5B9E;&#x73B0;&#x7684;&#x662F;&#x4ECE;&#x540E;&#x7AEF;&#x63A7;&#x5236;&#xFF0C;&#x7528;&#x6237;&#x867D;&#x7136;&#x5728;&#x4E0D;&#x80FD;&#x771F;&#x5B9E;&#x64CD;&#x4F5C;&#xFF0C;&#x4F46;&#x662F;&#x9875;&#x9762;&#x663E;&#x793A;&#x662F;&#x53EF;&#x4EE5;&#x7F16;&#x8F91;&#x7684;&#x3002;&#x4E3A;&#x4E86;&#x63D0;&#x9AD8;&#x4F53;&#x9A8C;&#xFF0C;&#x5BF9;&#x524D;&#x7AEF;&#x9875;&#x9762;&#x8FDB;&#x884C;&#x4E86;&#x4FEE;&#x6539;&#x3002;
</p>
</div>
</div>

<div id="outline-container-orgf066a23" class="outline-2">
<h2 id="orgf066a23">&#x4FEE;&#x6539;&#x90E8;&#x5206;&#x8BE6;&#x89E3;</h2>
<div class="outline-text-2" id="text-orgf066a23">
</div>
<div id="outline-container-orgb5eeef5" class="outline-3">
<h3 id="orgb5eeef5">&#x4FEE;&#x6539;&#x601D;&#x8DEF;</h3>
<div class="outline-text-3" id="text-orgb5eeef5">
<p>
&#x4EE5; assignee &#x529F;&#x80FD;&#x4E3A;&#x4F8B;&#xFF0C;&#x524D;&#x7AEF;&#x7684;&#x9875;&#x9762;&#x663E;&#x793A;&#x662F;&#x7531; app/assets/javascripts/sidebar/components/assignees/assignee_title.vue &#x8FD9;&#x4E2A;&#x6E90;&#x6587;&#x4EF6;&#x6765;&#x5B9E;&#x73B0;&#x7684;&#x3002;
</p>

<p>
&#x6211;&#x4EEC;&#x4ECE;&#x4EE5;&#x4E0B;&#x7684;&#x4EE3;&#x7801;&#x4E2D;&#x53EF;&#x4EE5;&#x770B;&#x5230;&#x662F;&#x901A;&#x8FC7; assigneeable &#x8FD9;&#x4E2A;&#x53D8;&#x91CF;&#x7684;&#x503C;&#x6765;&#x63A7;&#x5236;&#x662F;&#x5426;&#x663E;&#x793A; edit &#x6309;&#x94AE;&#x3002;&#x4E4B;&#x524D;&#x8FD9;&#x91CC;&#x4F7F;&#x7528;&#x7684;&#x662F; editable&#xFF0C;&#x4F46;&#x8FD9;&#x4E2A; editable &#x7684;&#x6743;&#x9650;&#x6BD4;&#x8F83;&#x5BBD;&#x6CDB;&#xFF0C;&#x662F;&#x9488;&#x5BF9;&#x6574;&#x4E2A; issue &#x7684;&#x7F16;&#x8F91;&#x6743;&#x9650;&#x3002;&#x73B0;&#x5728;&#x6211;&#x6839;&#x636E;&#x65B0;&#x589E;&#x7684; assignee &#x6743;&#x9650;&#x589E;&#x52A0;&#x4E86;&#x4E00;&#x4E2A;&#x5BF9;&#x5E94;&#x7684; assigneeable &#x7528;&#x6765;&#x7EC6;&#x5316;&#x67D0;&#x4E2A;&#x4EBA;&#x5728;&#x53EF;&#x4EE5;&#x5BF9; issue &#x8FDB;&#x884C;&#x8BC4;&#x8BBA;&#x7684;&#x65F6;&#x5019;&#x4E0D;&#x80FD;&#x8FDB;&#x884C; assignee
</p>

<div class="org-src-container">
<figure class="highlight"><table><tr><td class="code"><pre><span class="line">&lt;a
      v-if=&quot;assigneeable&quot;
      class=&quot;js-sidebar-dropdown-toggle edit-link float-right&quot;
      href=&quot;#&quot;
      data-track-event=&quot;click_edit_button&quot;
      data-track-label=&quot;right_sidebar&quot;
      data-track-property=&quot;assignee&quot;
    &gt;

  {__(&apos;Edit&apos;)}

&lt;/a&gt;</span><br></pre></td></tr></table></figure>
</div>


<p>
&#x8BE5;&#x6743;&#x9650;&#x53C8;&#x662F;&#x5728; app/assets/javascripts/sidebar/components/assignees/sidebar_assignees.vue &#x4E2D;&#x58F0;&#x660E;&#x4F20;&#x9012;&#x7684;&#x3002;
</p>

<p>
&#x4F20;&#x9012;&#x7684;&#x8FD9;&#x4E2A;&#x53D8;&#x91CF;&#x662F;&#x4ECE; app/assets/javascripts/sidebar/stores/sidebar_store.js &#x8FD9;&#x4E2A; store &#x4E2D;&#x521D;&#x59CB;&#x5316;&#x7684;&#x3002;
</p>

<p>
&#x8FD9;&#x4E2A; store &#x4E2D;&#x662F;&#x6CA1;&#x6709; assigneeable &#x8FD9;&#x4E2A;&#x5C5E;&#x6027;&#x7684;, &#x6240;&#x4EE5;&#x9700;&#x8981;&#x5728;&#x539F;&#x6709;&#x7684;&#x4EE3;&#x7801;&#x6846;&#x67B6;&#x4E2D;&#x6DFB;&#x52A0;&#x4E0A;&#x3002;
</p>

<div class="org-src-container">
<figure class="highlight ruby"><table><tr><td class="code"><pre><span class="line">app/serializers/issuable_sidebar_basic_entity.rb</span><br><span class="line"></span><br><span class="line"><span class="class"><span class="keyword">class</span> <span class="title">IssuableSidebarBasicEntity</span></span></span><br><span class="line"></span><br><span class="line">    expose <span class="symbol">:can_assignee</span> <span class="keyword">do</span> |issuable|</span><br><span class="line">      can?(current_user, <span class="symbol">:<span class="string">&quot;assignee_issue&quot;</span></span>, issuable.project)</span><br><span class="line">    <span class="keyword">end</span></span><br></pre></td></tr></table></figure>
</div>


<div class="org-src-container">
<figure class="highlight ruby"><table><tr><td class="code"><pre><span class="line"></span><br><span class="line">app/helpers/issuables_helper.rb</span><br><span class="line"></span><br><span class="line">  <span class="class"><span class="keyword">module</span> <span class="title">IssuablesHelper</span></span></span><br><span class="line"></span><br><span class="line">  <span class="symbol">assigneeable:</span> issuable.dig(<span class="symbol">:current_user</span>, <span class="symbol">:can_assignee</span>),</span><br></pre></td></tr></table></figure>
</div>
</div>
</div>

<div id="outline-container-orga0c82da" class="outline-3">
<h3 id="orga0c82da">&#x57FA;&#x672C;&#x4EE3;&#x7801;&#x7ED3;&#x6784;&#x603B;&#x7ED3;</h3>
<div class="outline-text-3" id="text-orga0c82da">
<p>
&#x524D;&#x7AEF;&#x57FA;&#x672C;&#x4E0A;&#x662F;&#x4F9D;&#x8D56;&#x4E8E; store &#x7684;&#x6570;&#x636E;&#x6765;&#x63A7;&#x5236;&#x663E;&#x793A;&#xFF0C;&#x8FD9;&#x4E2A; store &#x53C8;&#x6839;&#x636E;&#x6A21;&#x5757;&#x8FDB;&#x884C;&#x4E86;&#x5212;&#x5206;&#x3002;&#x6211;&#x4EEC;&#x5F53;&#x524D;&#x5173;&#x6CE8;&#x7684; assignee &#x6743;&#x9650;&#x5C5E;&#x4E8E; sidebar &#x6A21;&#x5757;&#xFF0C;&#x6240;&#x4EE5;&#x5728; sidebar_store &#x4E2D;&#x58F0;&#x660E;&#x3002;
</p>

<p>
&#x540C;&#x65F6;&#x53C8;&#x662F;&#x6839;&#x636E; isssueable &#x8FD9;&#x4E2A;&#x53D8;&#x91CF;&#x7684;&#x5185;&#x5BB9;&#x6765;&#x505A;&#x6743;&#x9650;&#x63D0;&#x53D6;&#x548C;&#x5224;&#x65AD;&#x3002;
</p>
</div>
</div>
</div>

<div id="outline-container-orgf086e80" class="outline-2">
<h2 id="orgf086e80">&#x603B;&#x7ED3;</h2>
<div class="outline-text-2" id="text-orgf086e80">
<p>
&#x76EE;&#x524D;&#x6765;&#x8BF4;&#x6211;&#x7EF4;&#x62A4;&#x7684;&#x8FD9;&#x4E2A;&#x7248;&#x672C;&#x548C;&#x5B98;&#x65B9;&#x7684;&#x7248;&#x672C;&#x5E76;&#x6CA1;&#x6709;&#x592A;&#x5927;&#x7684;&#x533A;&#x522B;&#xFF0C;&#x540C;&#x65F6;&#x4E5F;&#x4E0D;&#x8003;&#x8651;&#x53BB;&#x505A;&#x5927;&#x7684;&#x5206;&#x53C9;&#x3002;&#x5C3D;&#x91CF;&#x662F;&#x901A;&#x8FC7;&#x63D2;&#x4EF6;&#x548C;&#x6839;&#x636E;&#x73B0;&#x6709;&#x6846;&#x67B6;&#x6765;&#x5BF9;&#x4E00;&#x4E9B;&#x7EC6;&#x8282;&#x8FDB;&#x884C;&#x8C03;&#x6574;&#x3002;
</p>

<p>
&#x76EE;&#x524D;&#x8C03;&#x6574;&#x7684;&#x539F;&#x5219;&#x662F;&#xFF0C;&#x76F8;&#x5BF9;&#x4E8E;&#x5B98;&#x65B9;&#x9F13;&#x52B1;&#x5F00;&#x6E90;&#xFF0C;&#x653E;&#x6743;&#x7ED9;&#x5F00;&#x53D1;&#x8005;&#x81EA;&#x4E3B;&#x63A7;&#x5236;&#x6D41;&#x7A0B;&#x7684;&#x65B9;&#x5F0F;&#x6765;&#x8BF4;&#xFF0C;&#x6211;&#x7EF4;&#x62A4;&#x7684;&#x7248;&#x672C;&#x66F4;&#x63A5;&#x8FD1;&#x4E8E;&#x516C;&#x53F8;&#x8FD0;&#x4F5C;&#x3002;&#x81EA;&#x4E0A;&#x800C;&#x4E0B;&#x7684;&#x4EFB;&#x52A1;&#x5206;&#x53D1;&#xFF0C;&#x81EA;&#x4E0B;&#x800C;&#x4E0A;&#x7684;&#x4EFB;&#x52A1;&#x786E;&#x8BA4;&#x3002;&#x4E0D;&#x76F8;&#x4FE1;&#x6BCF;&#x4E2A;&#x4EBA;&#x90FD;&#x80FD;&#x65F6;&#x523B;&#x9075;&#x5B88;&#x89C4;&#x8303;&#xFF0C;&#x4F46;&#x662F;&#x901A;&#x8FC7;&#x673A;&#x5236;&#xFF0C;&#x8F6F;&#x4EF6;&#x6765;&#x786E;&#x4FDD;&#x9879;&#x76EE;&#x5F00;&#x53D1;&#x7684;&#x6D41;&#x7A0B;&#x4E00;&#x76F4;&#x5728;&#x89C4;&#x8303;&#x4E2D;&#x3002;
</p>
</div>
</div>
</div>

  </section>
</article>

  <div class="sharing grid">
  <section class="profile grid-item grid">
    <img class="avatar" src="https://avatars0.githubusercontent.com/u/1055130?s=460&v=4" alt="avatar">
    <div class="grid-item">
      <p class="title"> 极客世界 </p>
      <p class="subtitle"> 乐聚机器人研发总监 | 黄怀贤 </p>
    <div>
  </div></div></section>

  <section class="share-btns">
      <!-- <p> share it if you like it~ </p> -->
      <!-- <a class="twitter-share-button" data-size="large" data-via="DrakeLeung" href="https://twitter.com/intent/tweet?text=v id=" content">

<di">
  Tweet
</di"></a>

<script>
  window.twttr = (function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0],
    t = window.twttr || {};
  if (d.getElementById(id)) return t;
  js = d.createElement(s);
  js.id = id;
  js.src = "https://platform.twitter.com/widgets.js";
  js.async = true;
  fjs.parentNode.insertBefore(js, fjs);

  t._e = [];
  t.ready = function(f) {
    t._e.push(f);
  };

  return t;
}(document, "script", "twitter-wjs"));
</script>
 -->
  </section>
</div>


  
</main>

</body>
</html>
